--- crash in typechecker
--- "bad types in unification"
module tests.comp.Issue362 where

pure native getN getName :: Class(extends Object) -> String

derive ArrayElement (Class (extends Object))
instance Show (Class (extends Object)) where
    show c = getN c

list = [Int.javaClass :: Class(extends Object)]

array = arrayFromList list

c = array.[0]
s = show c
d = getN c

main = println c >> println "Ok"